The ability to accurately determine energy level information from a musical composition represented, for example, in a digital audio file, has many applications. For example, it can be particularly useful for a DJ to know the overall energy level of a song, or how the energy level develops through the duration of a song. When creating a set, a DJ may aim to maintain a certain energy level by mixing songs that have a consistently high energy level. The DJ may also choose certain points in the mix to play lower energy level songs so that there is some variation in a mix, and to give listeners time to recover physically. In this scenario, it would be beneficial to have the ability to perform a search in a database of music based on the energy level of each song, to aid the selection of songs to play. Typically, documentation concerning the energy level of a musical composition is not available, and even when it is, there may be no consistent standard for describing the energy level of a musical composition.
The energy level for a database of musical compositions may be determined by a human listener, who would give a subjective rating level in the range 1 to 10, where 1 would represent a musical composition with a very low energy level and 10 would represent the highest energy level a song can have. However, this can be very time consuming, and for the best results, a single person would need to determine or verify the energy level of an entire database of musical compositions so that the relative energy levels between musical compositions are consistent.
Standard software algorithms exist for determining the loudness of a musical composition, or how dynamic a musical composition is in terms of loudness changes. This can, to some extent, be used to determine the energy level of a musical composition. Musical compositions that are quiet and/or less dynamic generally relate to low energy levels, whereas loud and/or highly dynamic musical compositions are generally high in energy. However, the accuracy of such methods may be limited. These methods may not take into account the many interrelated high level attributes of a musical composition, which result in the perceived energy level of a musical composition, such as tempo and the type and loudness of beat patterns used. It may also be difficult to map these values to a single value that describes the overall energy level of a musical composition. In addition, creating an algorithm that produces acceptable results for a wide range of genres may be challenging. Typically, an algorithm may only give reasonable results for a small subset of genres.
One approach is disclosed in U.S. Pat. No. 8,326,584 to Wells et al. This approach characterizes a musical composition based upon a group of numerical values, each based upon human perception (e.g. danceability). This approach is based upon manual human cataloging of a large database of musical compositions and leveraging the database to characterize a new musical composition.